table of contents
ABS(3) | Руководство программиста Linux | ABS(3) |
ИМЯ¶
abs, labs, llabs, imaxabs - вычисляет абсолютное значение (модуль) целого числа.
СИНТАКСИС¶
#include <stdlib.h> int abs(int j);
long int labs(long int j);
long long int llabs(long long int j); #include <inttypes.h> intmax_t imaxabs(intmax_t j);
ОПИСАНИЕ¶
Функция abs() вычисляет абсолютное значение (модуль) целочисленного аргумента j. Функции labs(), llabs(), и imaxabs() вычисляют абсолютное значение аргумента j, который имеет соответствующий целочисленный тип.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ¶
Возвращает модуль целочисленного аргумента.
СООТВЕТСТВИЕ СТАНДАРТАМ¶
SVID 3, POSIX.1, BSD 4.3, ISO/IEC 9899. POSIX.1 (редакция 1996) требует наличия только функции abs(). ISO/IEC 9899:1990 (C89) включает в себя только функции abs() и labs(); функции llabs() и imaxabs() были добавлены в C99.
ЗАМЕЧАНИЯ¶
Результат вычисления абсолютного значения наибольшего по модулю отрицательного целого числа не определен.
Функция llabs() включена в glibc начиная с версии 2.0, но не присутствует в libc5 или libc4. Функция imaxabs() включена в glibc начиная с версии 2.1.1.
Для того, чтобы появилось объявление функции llabs(), может потребоваться объявить _ISOC99_SOURCE или _ISOC9X_SOURCE (зависит от версии glibc) до включения стандартных заголовочных файлов.
GCC обрабатывает abs() и labs() как встроенные функции. GCC 3.0 точно так же обрабатывает еще и llabs() и imaxabs().
СМОТРИ ТАКЖЕ¶
17 декабря 2000 | GNU |